﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using BussinessLogicLayer.BussinessObject;
using DataAccessLayer;

namespace BussinessLogicLayer.ChucNangSV.CaiDat
{
    class cnSinhVien:ICnSinhVien
    {
        public SinhVien_SV LayThongTinSinhVien(string maSv)
        {
            TinChiEntitiesDataContext tinChiEntities = Service.TinChiDataContext;
            SinhVien_SV sinhvien = tinChiEntities.SINHVIENs.Where(sv => sv.MaSV == maSv).Select(sv => new SinhVien_SV
                                                                                                    {
                                                                                                        MaSv = sv.MaSV,
                                                                                                        HoTen = sv.Hoten,
                                                                                                        QueQuan = sv.Quequan,
                                                                                                        GioiTinh = sv.Gioitinh.Value,
                                                                                                        NgaySinh = sv.Ngaysinh.Value,
                                                                                                        MaKhoa = sv.MaKhoa,
                                                                                                        TenKhoa = sv.KHOA.Tenkhoa
                                                                                                    }).First();

            return sinhvien;
        }

        public List<ChiTietHpSv> LayDsLopHpSv(SinhVien_SV Sv)
        {
            TinChiEntitiesDataContext tinChiEntities = Service.TinChiDataContext;
            List<ChiTietHpSv> ds =
                tinChiEntities.DIEMSVs.Where(svien => svien.MaSV == Sv.MaSv).Select(svien => new ChiTietHpSv
                                                                                                 {
                                                                                                     MaLopHp = svien.MaLopHP,
                                                                                                     MaHp = svien.LOPHP.MaHP,
                                                                                                     TenHp = svien.LOPHP.HocPhan.TenHP,
                                                                                                     TenGv = svien.LOPHP.GIAOVIEN.Hoten,
                                                                                                     SoTc = svien.LOPHP.HocPhan.Sotinchi.Value
                                                                                                 }).ToList();
            return ds;
        }

        public List<ChiTietDiemSv> LayDsDiemSv(SinhVien_SV Sv)
        {
            TinChiEntitiesDataContext tinChiEntities = Service.TinChiDataContext;
            List<ChiTietDiemSv> dsDiem =
                tinChiEntities.DIEMSVs.Where(svien => svien.MaSV == Sv.MaSv).Select(svien => new ChiTietDiemSv
                                                                                              {
                                                                                                  MaHp = svien.LOPHP.MaHP,
                                                                                                  TenHp = svien.LOPHP.HocPhan.TenHP,
                                                                                                  SoTc = svien.LOPHP.HocPhan.Sotinchi.Value,
                                                                                                  DiemChuyenCan = svien.Diemchuyencan.Value,
                                                                                                  DiemGiuaKy = svien.Diemgiuaky.Value,
                                                                                                  DiemCuoiKy = svien.Diemcuoiky.Value,
                                                                                                  DiemTongKet = svien.Diemtongket.Value

                                                                                              }).ToList();
            return dsDiem;
        }
    }
}
